1. Technical Field
This invention relates to a system and process for handling facsimile communications in a global system for mobile communications (GSM) network, and more particularly, to such a system and process that automatically synchronizes incoming facsimile information, detects a bit-rotated condition and recovers bit-rotated status frames in an unspecified GSM network.
2. Background Art
In the new mobile information age, the cellular phone is delivering more than just voice calls. It is being coupled with portable PCs to send and receive information on corporate intranets, the Internet and online services while on the go for increased productivity and efficiency. Mobile systems are evolving at a rapid pace to provide faster and more sophisticated communications capabilities. The Global System for Mobile Communications (GSM) digital cellular technology promises to deliver the robust platform and high-bandwidth needed to realize these sophisticated communications capabilities. For example, GSM technology makes the transmission and receipt of facsimiles over mobile phone systems a reality. The Global System for Mobile Communications technically refers to a standard created in 1987. Thirteen European countries signed a Memorandum of Understanding and agreed to the construction of a standardized telecommunications system. GSM, a digital, multicellular mobile telephone network system, was developed from this standard. In a GSM network, voice is converted into a coded digital signal, which is transmitted and decoded in the receiving GSM handset. Data and facsimiles are also transmitted digitally, currently at 9600 bps, although this data rate is likely to increase significantly in the near future. Originally, GSM was intended to be established only as a Pan-European system, but today has expanded into many other parts of the world, including to some extent the United States of America. Thus, GSM is rapidly becoming a world-wide network. GSM employs a small Subscriber Identity Module Card (SIM Card) that a user inserts into a GSM handset. These SIM cards contain information such as the user's telephone number and billing data, among other things. This enables a user to travel anywhere in the world having a GSM system and receive phone calls and other data transmissions using their usual telephone number by simply inserting their SIM Card into an appropriate GSM handset. Essentially, this is accomplished via an international roaming feature whereby bilateral roaming agreements between service providers allow reciprocal access to each others network. Mobile users do not have to deal with various foreign dialing tones, access codes, country codes or incompatible hardware. Once a user turns on their GSM handset and logs onto the local network, the system finds them and routes all incoming calls and data transmissions to them just as if they were home. In regards to the handling of data transmissions over a GSM network, one of the primary ways in which this is accomplished is with the use of a conventional notebook PC, and a PC Card designed for GSM networks. The PC Card provides the necessary interface between the notebook PC and the GSM handset (and so the GSM network). Since a GSM mobile phone and a portable PC are both digital devices, a modem in the true sense of the word is not necessary. What is needed is Terminal Adapter Equipment (TAE) to translate between the different digital formats of the GSM phone and the PC, and to simulate an ordinary modem to the PC by sending signals such as a dial tone and busy tone. This is a primary function of the GSM PC Card, although not its only one.
The European Telecommunications Standard (ETS) standards document “ETS 300 538” Second Edition, reference RE/SMG-0403045P, “European digital cellular telecommunications system (Phase 2); Technical realization of facsimile group 3 transparent (GSM 03.45)” specifies a standardized “fax adaptation” communications interface used to send and receive group 3 facsimiles (faxes) using the GSM. Among other things, GSM 03.45 defines the following set of fax adaptation frames:
a) SYNC frame—an adaptation frame explicitly designed to allow synchronization at the remote end, even in adverse transmission environments. This frame is a unique frame used even as an idle frame when there is no information to be sent over the radio path. The SYNC frames are 8 octet (i.e. byte) frames containing the following values (in hex notation) as specified by the ETS: “3E 37 50 96 C1 C8 AF 69”.
b) STATUS frame—this frame is intended to carry both state identification codes and state specific information that collectively constitute facsimile transmission instructions. The STATUS frame has a unique structured format as shown in the following Table 1:
            TABLE 1octetoctet 01octet 2octet 3octet 4octet 5octet 6octet 7IDENTINFOIDENTINFOIDENTINFOIDENTINFOThe IDENT octets are split into two 4-bit fields, each of which specifies the same state identification code for the status information. The duplication within each IDENT octet is done to mitigate the effects of noise in the bit stream. This is also one of the reasons for repeating of the IDENT and INFO octet pairs four times in each STATUS frame, along with facilitating synchronization checking. The state identification codes contained in the IDENT octets identify what type of state specific information is contained in the INFO octets. For example, an IDENT code 11 (in hex notation) indicates that the INFO octets contain a binary coded signal (BCS) under the ETS. The state specific information contained in the INFO octets can be commands, instructions, etc. For example, in the case of an incoming facsimile transmission, the state specific information may represent a standard facsimile control message used in connection with group 3 faxes. In reference to the state specific information, it is noted that the repetition of the above-described INFO octets in a STATUS frame also allows the incoming bit stream to be adapted to the conventional 300 bps rate associated with the standard facsimile control messages.
c) DATA frame—this frame is fully unstructured and carries fax coded information (i.e. scanline data) when data is being passed.
In simplified terms, a typical facsimile transmission in a GSM network would involve a sending GSM unit initiating the transmission by sending a series of SYNC frames to a receiving GSM unit. The receiving unit would identify one or more of the incoming SYNC frames and use the frame(s) to synchronize the incoming transmission so that the individual SYNC, STATUS and DATA frames can be recognized in the incoming facsimile information and processed accordingly. In addition, the receiving unit transmits a series of SYNC and STATUS frames back to the sending unit. The sending unit uses these frames to synchronize the incoming facsimile information and recognize state specific information contained in the incoming STATUS frames. This information can include items such as the capabilities of the receiving unit. For example, the receiving unit might relay the kinds of data compression it can employ/decode, its data transmission speeds, page sizes it can handle, etc. The sending unit would then transmit, among other things, STATUS frames that specify how the facsimile will be sent in view of the relayed capabilities of the receiving unit. Once the facsimile transmission ground rules are established, the sending unit will transmit the facsimile scan line data by transmitting a special sequence of alternating SYNC and STATUS frames which tell the receiving unit the next non-SYNC/STATUS frame is a DATA frame.
In the true-life realization of a GSM network, the aforementioned frames may be bit rotated from 0 bits to 7 bits. Thus, in order to send and receive facsimiles from any network in the world, there must be a provision for determining the degree of bit rotation in the incoming signal and interpreting the signal so as to synchronize the transmission and recognize the STATUS frame information. One way to accomplish this task would be to store all the bit-rotation patterns for every network in the world. For example, this information could be part of a look up table stored in a memory module of a GSM PC Card. However, such a scheme would have many drawbacks and so is not preferred. For example, this look-up table scheme would require the user to specify what network the handset is operating over via some kind of manual input, so that the system can “look-up” the bit-rotation pattern for that network and apply it to the incoming signal. The requirement for user input to send or receive facsimiles complicates the use of the system and is considered very undesirable. New GSM networks are also being formed at a rapid pace. This would require frequent updating or replacement of the GSM PC Card to add new network bit-rotation patterns to the look-up table. In addition, not all networks cause the same bit-rotation pattern to occur at all times. This would complicate the look-up table scheme in that some method would have to be employed to determine which one of various possible bit-rotation patterns was associated with the incoming signal. Further, if the bit-rotation pattern of the network was completely variable, then the look up table scheme would not work at all.
Accordingly, there is a need for a system and method to process potentially bit-rotated facsimile transmissions in a (GSM) network without knowledge of the bit-rotation patterns associated with the particular GSM network involved or the requirement for a user to input information about the network.